Skip to main content

정글에 와드는 열심히 박으면서,
왜 서버 모니터링은 안하나요?

2023.12.07

왜 우리는 모니터링을 도입하지 못할까

  1. 개발하기도 바쁘다
  2. 대부분 재시작으로 해결되서
  3. 아직 문제가 발생하지 않아서
    1. 정확하지 않은 가용성 체크
    2. 잠재적 문제의 누적
    3. 팀 리더의 반대

모니터링의 중요성

  • CS 문의로 이슈 발생시 서비스 상황 체크 X
  • 성능 최적화

    • 부하 지점 파악 후 최적화 가능
  • 가용성 보장

    • 지표 체크 후 연속성 보장 가능
  • 안정성 유지

  • 보안 강화

    • 비정상적인 동작 확인 가능

초기 모니터링 도구 선택 기준

  • APM

    • 스타트업 패키지
      • Yes -> 와탭
      • No -> 데이터독
  • 인프라 모니터링

    • 인스턴스 5대 이하
      • Yes -> 와탭
      • No -> zabbix

지표 알림 임계점 설정

  • 평소 상황 + 10~20퍼 정도 더한 값에서 70퍼 이하를 임계값으로 지정

로그 모니터링의 중요성

  • 로그 데이터의 이해

  • Log Level

    • trace
    • debug
    • info
    • warn
    • error : 요청 처리시 발생한 오류 정보
    • fatal : 종료 될정도로 치명적인 오류 정보
  • 로그 관리 전략

    • 시간, 로그 레벨 포함하여 기록
    • 특정 기간 이후 자동 삭제되도록 지정
    • 에러코드와 메시지 공통화
    • 에러/ 비즈니스 히스토리 위주로 기록

보안 위협 감지

  • 상품 크롤링 감지

    • 동일 IP의 반복 호출 차단
    • 비정상적인 접근에 대한 네트워크(인프라) 비용 감소 및 레이턴시 감소
    • 기업 데이터 보안 증대
    • BM 보호
  • 서비스간 호출관계 파악

    • 누가(어떤 서비스) 접근했는지 파악 가능
    • 각 마이크로 서비스에서의 Dependency Trace 가능
  • 개발자가 수정한 히스토리 파악

    • 서비스의 동작을 추적할 수 있는 기본적인 환경

모니터링 시스템 아키텍쳐 - 프로젝트 초기에 기본적으로 APM | 인프라 모니터링 세팅하자

세미나 5줄 요약

  • 상용 모니터링 세팅은 생각보다 쉽다
  • 항상 대시보드를 들여다볼 필요는 없다 (배포 전.후, 주간 모니터링, 임계치 알림)
  • 비즈니스 로직등 중요한 부분은 로그나 알림을 걸어두자
  • 세팅하고 나서는 팀원이 세팅하는 문화가 만들어진다.
  • 소 잃고 외양간 고치지 말자